package com.nuanshui.heatedloan.baseservice.facade;


import com.nuanshui.heatedloan.baseservice.model.ClientVersion;
import com.nuanshui.heatedloan.constant.DubboCacheRegion;
import com.nuanshui.heatedloan.dubbo.extension.cache.Cacheable;
import com.nuanshui.heatedloan.pageable.Pager;

public interface ClientVersionService {

	/**
	 * 获取所有的
	 * @param pager
	 * @return
	 */
	Pager<ClientVersion> list(Pager<ClientVersion> pager, ClientVersion cv);

	/**
	 * 保存一个版本
	 * @param cv
	 */
	void save(ClientVersion cv);

	/**
	 * 删除一个版本
	 * @param id
	 */
	void delete(String id);

	/**
	 * 修改一个版本
	 * @param cv
	 */
	void update(ClientVersion cv);

	/**
	 * 根据客户端类型获取最新版本
	 * @param type
	 * @return
	 */
	@Cacheable(value= DubboCacheRegion.CHACHE_CONSTANT_CLIENT_VERSION)
	ClientVersion getNewClientVersion(String type);
}
